DarwinBots has the ability to share organisms over the internet with other users.
After having considered various p2p solutions (an connection with icq to retrieve the ip's of known people, a php page storing an online list of users), finally I decided to use ftp to store directly in a server the organism files to be shared. So, there's no more any direct connection between users, and there's not even any need for the users to be connected at the same time to the internet. 
Whenever DarwinBots wants to load or save an organism from the net,  it will simply search for a specified ftp server, and do some operations on that server. Another good aspect of this method, is that anybody can easily setup a server to share organims with others, a few friends or the entire darwinbots community (that will depend on how many people you want to inform of the existence of the server). 

Before I explain you HOW to setup the server, I'll tell you WHAT DarwinBots will do with it.

DarwinBots will connect to the server once every n simulation cycles for upload/download operations.

Download sequence: changes from root dir to a folder called darwinftp (it has to be already there); retrieves the directory of that folder; counts .dbo files and, if their number is greater than 99 will delete the 25% eldest  .dbo files. Then, it will download a random .dbo file and close the connection.

Upload sequence: changes from root to darwinftp; uploads a single file, closes the connection.

Since any .dbo file has a size ranging approx from 5kb (single-celled organisms) to 20kb (multicellular worms), the transfers will be fast, and the total disk space used will range from a few hundred kb to one or two megs, since the maximum file number is 100. 

If more than three consecutive attempts to connect to the server fail, DarwinBots will disable internet sharing for that simulation.

So, if you want to try this, here's how.

1) get an FTP server program. I'm using Cerberus FTP (http://www.cerberusftp.com/), a little, simple and free program. Many people likes also GuildFTPd (http://www.guildftpd.com/), that's also free.

2) create a folder on your HD called darwinftp.

3) configure the server so that darwinftp will be the only folder visible from the root directory. You can configure it for anonymous users or passworded, it's the same.

That's all. Now, if you run DarwinBots and specify the name or the ip address of your server in the  internet options tab, DarwinBots will connect to that server to load/save organisms.

Examples for FTP server address: 

ftp://80.117.73.55
ftp://usrname:usrpwd@80.117.73.55
ftp://darwinbots.serveftp.com
ftp://usrname:usrpwd@darwinbots.serveftp.com
 

If you have a dynamic ip (that is, your ip changes every time you connect to the internet), you'll have to specify a new ip each time. But you can also use a service like that of  www.noip.com, that gives you (for free!) a subdomain name linking to your dynamic ip, with a little software updating it each time it changes. I'm doing so now.

If you'd like to setup a public always-on server, inform me, and i'll put its address on the DarwinBots home page.

Bye,
Carlo
